﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SIGEB.Modelo.moduloTipoDocumentos
{
    public class condicion_Rango_Fecha1:condicion
    {
        #region "constructores"
        public condicion_Rango_Fecha1(atributo valor_orginal, DateTime limite, int operador)
            : base(valor_orginal)
        {
            this.operador = operador;
            this.limite = limite;
            tipo = 4;
        }

        #endregion

        #region "métodos"

        public override bool valido()
        {
            DateTime actual;
            try
            {
                actual = DateTime.Parse(valororiginal.valorCampo);
            }
            catch (FormatException)
            {
                return false;
            }
            switch (operador)
            {
                case 1:
                    return actual == limite;
                case 2:
                    return actual != limite;
                case 3:
                    return actual > limite;
                case 4:
                    return actual < limite;
                case 5:
                    return actual >= limite;
                case 6:
                    return actual <= limite;
                default:
                    throw new Exception("Operador inválido");
            }
        }

        #endregion

        #region "atributos"

        private int operador;
        private DateTime limite;

        #endregion
    }

}
